import { defineStore } from 'pinia'
export const useCounterStore = defineStore('counter', {
  state: () => ({
    count: 0,
    user: {
      name: 'John',
      age: 30,
    },
  }),
  getters: {
    doubleCount: (state) => state.count * 2,
    greeting: (state) => `Hello ${state.user.name}!`,
  },
  actions: {
    increment() {
      this.count++
    },
    async fetchUser() {
      // 模拟异步请求
      const response = await fetch('/api/user')
      this.user = await response.json()
    },
  },
  persist: true, // 启用持久化
  // 自定义配置示例
  // persist: {
  //   key: 'my_app_user_data', // 自定义存储键名
  //   storage: sessionStorage, // 可选 localStorage/sessionStorage
  //   paths: ['token'], // 仅持久化指定字段
  //   exclude: ['theme'], // 排除指定字段
  // },
  // 清空所有持久化数据（以 localStorage 为例）
  // localStorage.removeItem('pinia-plugin-persistedstate')
  // // 或清空指定 store 的数据（需知道 key）
  // localStorage.removeItem('your_custom_key')
})
